#!/usr/bin/env python
#coding:utf-8
#天气预报程序：今天，明天，后天三天的天气情况

import urllib2,re
import sys

def getPage(url):
    '''读取网页内容
    '''
    page = urllib2.urlopen(url)
    page_content = page.read()
    page.close()
    return page_content

def getWeather(webPage):
    '''获取字段中所需要的信息，当记录下来
    '''
    weather=[]
    regex=r'<div class="Weather_TP">(.*)</div>'    # 太强大了，(.*)这里面的东西，正是我们所需要的天气情况
    match=re.findall(regex,webPage)    # 利用findall()找出信息，并放到match列表中

    for i in match:
        weather.append(i)
    return weather

def showWeather(url):
    '''打印出检索到的信息
    '''
    page_content=getPage(url)
    weather=getWeather(page_content)
    for i in weather:
        if i<>None:
            print '\n'
            print i.decode('gbk').encode('utf-8')    # 由于页面所用的是GB2312编码，所以需要转码
            #print type(i)
 
if __name__ == '__main__':

    if len(sys.argv) == 2:
        city = sys.argv[1]
        url = 'http://php.weather.sina.com.cn/search.php?f=1&city=%s&dpc=1'%city
        print '\n%s市近来三天的天气是：'%city
        showWeather(url)
    else:
        print '==========================\n'
        print '      天气预报小程序\n'
        print '        使用方法：\n'
        print '   python w2.py 城市名字\n'
        print '==========================\n'

